`:top
In `F33f`_`[fluid dynamics`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Fluid_dynamics]`_`f, `!aerodynamic potential flow codes`! or `!panel codes`! are used to determine the fluid velocity, and subsequently the pressure distribution, on an object. This may be a simple two-dimensional object, such as a circle or wing, or it may be a three-dimensional vehicle.
A series of singularities as sources, sinks, vortex points and `F33f`_`[doublets`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Doublet_(potential_flow)]`_`f are used to model the panels and wakes. These codes may be valid at subsonic and supersonic speeds.
>>Contents
• `F0af`_`[History`#history]`_`f
• `F0af`_`[Assumptions`#assumptions]`_`f
• `F0af`_`[Derivation of panel method solution to potential flow problem`#derivation-of-panel-method-solution-to-potential-flow-problem]`_`f
• `F0af`_`[Required boundary conditions`#required-boundary-conditions]`_`f
• `F0af`_`[Discretization of potential flow equation`#discretization-of-potential-flow-equation]`_`f
• `F0af`_`[Methods for discretizing panels`#methods-for-discretizing-panels]`_`f
• `F0af`_`[Methods of determining pressure`#methods-of-determining-pressure]`_`f
• `F0af`_`[What panel methods cannot do`#what-panel-methods-cannot-do]`_`f
• `F0af`_`[Potential flow software`#potential-flow-software]`_`f
• `F0af`_`[See also`#see-also]`_`f
• `F0af`_`[Notes`#notes]`_`f
• `F0af`_`[References`#references]`_`f
-─
>>History
Early panel codes were developed in the late 1960s to early 1970s. Advanced panel codes, such as Panair (developed by `F33f`_`[Boeing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Boeing]`_`f), were first introduced in the late 1970s, and gained popularity as computing speed increased. Over time, panel codes were replaced with higher order panel methods and subsequently CFD (`F33f`_`[Computational Fluid Dynamics`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Computational_Fluid_Dynamics]`_`f). However, panel codes are still used for preliminary aerodynamic analysis as the time required for an analysis run is significantly less due to a decreased number of elements.
>>Assumptions
These are the various assumptions that go into developing potential flow panel methods:
• `F33f`_`[Inviscid`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Inviscid_flow]`_`f
• `F33f`_`[Incompressible`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Incompressible_flow]`_`f ∇ ∇ ⋅ ⋅ V = 0 {\\displaystyle \\nabla \\cdot V=0}
• Irrotational ∇ ∇ × × V = 0 {\\displaystyle \\nabla \\times V=0}
• `F33f`_`[Steady`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Steady_state]`_`f ∂ ∂ ∂ ∂ t = 0 {\\displaystyle {\\frac {\\partial }{\\partial t}}=0}
However, the incompressible flow assumption may be removed from the potential flow derivation leaving:
• Potential flow (inviscid, irrotational, steady) ∇ ∇ 2 ϕ ϕ = 0 {\\displaystyle \\nabla ^{2}\\phi =0}
>>Derivation of panel method solution to potential flow problem
• From Small Disturbances
( 1 − − M ∞ ∞ 2 ) ϕ ϕ x x + ϕ ϕ y y + ϕ ϕ z z = 0 {\\displaystyle (1-M_{\\infty }^{2})\\phi _{xx}+\\phi _{yy}+\\phi _{zz}=0} (subsonic)
• From `F33f`_`[Divergence Theorem`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Divergence_theorem]`_`f
∭ ∭ V ( ∇ ∇ ⋅ ⋅ F ) d V = ∬ ∬ S F ⋅ ⋅ n d S {\\displaystyle \\iiint \\limits _{V}\\left(\\nabla \\cdot \\mathbf {F} \\right)dV=\\iint \\limits _{S}\\mathbf {F} \\cdot \\mathbf {n} \\,dS}
• Let Velocity U be a twice continuously differentiable function in a region of volume V in space. This function is the stream function ϕ ϕ {\\displaystyle \\phi } .
• Let P be a point in the volume V
• Let S be the surface boundary of the volume V.
• Let Q be a point on the surface S, and R = | P − − Q | {\\displaystyle R=|P-Q|} .
As Q goes from inside V to the surface of V,
• Therefore:
U p = − − 1 4 π π ∭ ∭ V ( ∇ ∇ 2 ⋅ ⋅ U R ) d V Q {\\displaystyle U_{p}=-{\\frac {1}{4\\pi }}\\iiint \\limits _{V}\\left({\\frac {\\nabla ^{2}\\cdot \\mathbf {U} }{R}}\\right)dV_{Q}}
− − 1 4 π π ∬ ∬ S ( n ⋅ ⋅ ∇ ∇ U R ) d S Q {\\displaystyle -{\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left({\\frac {\\mathbf {n} \\cdot \\nabla \\mathbf {U} }{R}}\\right)dS_{Q}}
+ 1 4 π π ∬ ∬ S ( U n ⋅ ⋅ ∇ ∇ 1 R ) d S Q {\\displaystyle +{\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left(\\mathbf {U} \\mathbf {n} \\cdot \\nabla {\\frac {1}{R}}\\right)dS_{Q}}
For : ∇ ∇ 2 ϕ ϕ = 0 {\\displaystyle \\nabla ^{2}\\phi =0} , where the surface normal points inwards.
ϕ ϕ p = − − 1 4 π π ∬ ∬ S ( n ∇ ∇ ϕ ϕ U − − ∇ ∇ ϕ ϕ L R − − n ( ϕ ϕ U − − ϕ ϕ L ) ∇ ∇ 1 R ) d S Q {\\displaystyle \\phi _{p}=-{\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left(\\mathbf {n} {\\frac {\\nabla \\phi _{U}-\\nabla \\phi _{L}}{R}}-\\mathbf {n} \\left(\\phi _{U}-\\phi _{L}\\right)\\nabla {\\frac {1}{R}}\\right)dS_{Q}}
This equation can be broken down into both a source term and a doublet term.
The Source Strength at an arbitrary point Q is:
σ σ = ∇ ∇ n ( ∇ ∇ ϕ ϕ U − − ∇ ∇ ϕ ϕ L ) {\\displaystyle \\sigma =\\nabla \\mathbf {n} (\\nabla \\phi _{U}-\\nabla \\phi _{L})}
The Doublet Strength at an arbitrary point Q is:
μ μ = ϕ ϕ U − − ϕ ϕ L {\\displaystyle \\mu =\\phi _{U}-\\phi _{L}}
The simplified potential flow equation is:
ϕ ϕ p = − − 1 4 π π ∬ ∬ S ( σ σ R − − μ μ ⋅ ⋅ n ⋅ ⋅ ∇ ∇ 1 R ) d S {\\displaystyle \\phi _{p}=-{\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left({\\frac {\\sigma }{R}}-\\mu \\cdot \\mathbf {n} \\cdot \\nabla {\\frac {1}{R}}\\right)dS}
With this equation, along with applicable boundary conditions, the potential flow problem may be solved.
>>Required boundary conditions
The velocity potential on the internal surface and all points inside V (or on the lower surface S) is 0.
ϕ ϕ L = 0 {\\displaystyle \\phi _{L}=0}
The Doublet Strength is:
μ μ = ϕ ϕ U − − ϕ ϕ L {\\displaystyle \\mu =\\phi _{U}-\\phi _{L}}
μ μ = ϕ ϕ U {\\displaystyle \\mu =\\phi _{U}}
The velocity potential on the outer surface is normal to the surface and is equal to the freestream velocity.
ϕ ϕ U = − − V ∞ ∞ ⋅ ⋅ n {\\displaystyle \\phi _{U}=-V_{\\infty }\\cdot \\mathbf {n} }
These basic equations are satisfied when the geometry is a 'watertight' geometry. If it is watertight, it is a well-posed problem. If it is not, it is an ill-posed problem.
>>Discretization of potential flow equation
The potential flow equation with well-posed boundary conditions applied is:
μ μ P = 1 4 π π ∬ ∬ S ( V ∞ ∞ ⋅ ⋅ n R ) d S U + 1 4 π π ∬ ∬ S ( μ μ ⋅ ⋅ n ⋅ ⋅ ∇ ∇ 1 R ) d S {\\displaystyle \\mu _{P}={\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left({\\frac {V_{\\infty }\\cdot \\mathbf {n} }{R}}\\right)dS_{U}+{\\frac {1}{4\\pi }}\\iint \\limits _{S}\\left(\\mu \\cdot \\mathbf {n} \\cdot \\nabla {\\frac {1}{R}}\\right)dS}
• Note that the d S U {\\displaystyle dS_{U}} integration term is evaluated only on the upper surface, while th d S {\\displaystyle dS} integral term is evaluated on the upper and lower surfaces.
The continuous surface S may now be discretized into discrete panels. These panels will approximate the shape of the actual surface. This value of the various source and doublet terms may be evaluated at a convenient point (such as the centroid of the panel). Some assumed distribution of the source and doublet strengths (typically constant or linear) are used at points other than the centroid. A single source term s of unknown strength λ λ {\\displaystyle \\lambda } and a single doublet term m of unknown strength λ λ {\\displaystyle \\lambda } are defined at a given point.
σ σ Q = ∑ ∑ i = 1 n λ λ i s i ( Q ) = 0 {\\displaystyle \\sigma _{Q}=\\sum _{i=1}^{n}\\lambda _{i}s_{i}(Q)=0}
μ μ Q = ∑ ∑ i = 1 n λ λ i m i ( Q ) {\\displaystyle \\mu _{Q}=\\sum _{i=1}^{n}\\lambda _{i}m_{i}(Q)}
where:
s i = l n ( r ) {\\displaystyle s_{i}=ln(r)}
m i = {\\displaystyle m_{i}=}
These terms can be used to create a system of linear equations which can be solved for all the unknown values of λ λ {\\displaystyle \\lambda } .
>>Methods for discretizing panels
• constant strength - simple, large number of panels required
• linear varying strength - reasonable answer, little difficulty in creating well-posed problems
• quadratic varying strength - accurate, more difficult to create a well-posed problem
Some techniques are commonly used to model surfaces.`:cite-ref-1[`F5bf`_`[1`#cite-note-1]`_`f]
• Body Thickness by line sources
• Body Lift by line doublets
• Wing Thickness by constant source panels
• Wing Lift by constant pressure panels
• Wing-Body Interface by constant pressure panels
>>Methods of determining pressure
Once the Velocity at every point is determined, the pressure can be determined by using one of the following formulas. All various `F33f`_`[Pressure coefficient`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Pressure_coefficient]`_`f methods produce results that are similar and are commonly used to identify regions where the results are invalid.
Pressure Coefficient is defined as:
C p = p − − p ∞ ∞ q ∞ ∞ = p − − p ∞ ∞ 1 2 ρ ρ ∞ ∞ V ∞ ∞ 2 = p − − p ∞ ∞ γ γ 2 p ∞ ∞ M ∞ ∞ 2 {\\displaystyle C_{p}={\\frac {p-p_{\\infty }}{q_{\\infty }}}={\\frac {p-p_{\\infty }}{{\\frac {1}{2}}\\rho _{\\infty }V_{\\infty }^{2}}}={\\frac {p-p_{\\infty }}{{\\frac {\\gamma }{2}}p_{\\infty }M_{\\infty }^{2}}}}
The Isentropic Pressure Coefficient is:
C p = 2 γ γ M ∞ ∞ 2 ( ( 1 + γ γ − − 1 2 M ∞ ∞ 2 [ 1 − − | V → → | 2 | V ∞ ∞ → → | 2 ] ) γ γ γ γ − − 1 − − 1 ) {\\displaystyle C_{p}={\\frac {2}{\\gamma M_{\\infty }^{2}}}\\left(\\left(1+{\\frac {\\gamma -1}{2}}M_{\\infty }^{2}\\left[{\\frac {1-|{\\vec {V}}|^{2}}{|{\\vec {V_{\\infty }}}|^{2}}}\\right]\\right)^{\\frac {\\gamma }{\\gamma -1}}-1\\right)}
The Incompressible Pressure Coefficient is:
C p = 1 − − | V → → | 2 | V ∞ ∞ → → | 2 {\\displaystyle C_{p}=1-{\\frac {|{\\vec {V}}|^{2}}{|{\\vec {V_{\\infty }}}|^{2}}}}
The Second Order Pressure Coefficient is:
C p = 1 − − | V → → | 2 + M ∞ ∞ 2 u 2 {\\displaystyle C_{p}=1-|{\\vec {V}}|^{2}+M_{\\infty }^{2}u^{2}}
The Slender Body Theory Pressure Coefficient is:
C p = − − ( 2 u + v 2 + w 2 ) {\\displaystyle C_{p}=-(2u+v^{2}+w^{2})}
The Linear Theory Pressure Coefficient is:
C p = − − 2 u {\\displaystyle C_{p}=-2u}
The Reduced Second Order Pressure Coefficient is:
C p = 1 − − | V → → | 2 {\\displaystyle C_{p}=1-|{\\vec {V}}|^{2}}
>>What panel methods cannot do
• Panel methods are inviscid solutions. You will not capture viscous effects except via user "modeling" by changing the geometry.
• Solutions are invalid as soon as the flow changes locally from subsonic to supersonic (i.e. the critical Mach number has been exceeded) or vice versa.
>>Potential flow software
`t
| Name | License | Lan | Operating system | Operating system | Operating system | Geometry import | Meshing | Meshing | Meshing | Body Representation | Wake model | Developer |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Name | License | Lan | Linux | OS X | Microsoft Windows | Geometry import | Structured | Unstructured | Hybrid | Body Representation | Wake model | Developer |
| Aeolus ASP | Proprietary | Java / Fortran | Yes | | Yes | | Yes | | | Quadrilaterals | | Aeolus Aero Sketch Pad |
| CMARC | Proprietary | C | Yes | | Yes | | | | | | | Homepage , AeroLogic, based on PMARC-12 |
| DesignFOIL | Proprietary | | Wine | | Yes | | | | | | | www .dreesecode .com , DreeseCode Software LLC |
| FlightStream | Proprietary | Fortran / C++ | | | Yes | CAD, Discrete | | Yes | Yes | Solids | | Research in Flight Company |
| HESS | Proprietary | | | | | | | | | | | Douglas Aircraft Company |
| LinAir | Proprietary | | Yes | | | | | | | | | Desktop Aeronautics |
| MACAERO | Proprietary | | | | | | | | | | | McDonnell Aircraft |
| NEWPAN | Proprietary | C++ | Yes | | | | Yes | Yes | | | | Flow Solutions Ltd. |
| Tucan | GPLv3 | VB.NET / C#.NET | Yes (Console) | | Yes | STL | Yes | | | Quadrilaterals & triangles | Free | G. Hazebrouck & contributors |
| QBlade | GPLv2 | C / C++ | Yes | | | | | | | | | TU Berlin |
| Quadpan | Proprietary | | | | | | | | | | | Lockheed |
| PanAir a502 | Public domain software | Fortran | Yes | Yes | Yes | | | | | | | Homepage , Boeing ? |
| PANUKL | freeware | C++ / Fortran | Yes | | Yes | NX - partially | Yes | | | Quadrilaterals | | Warsaw University of Technology , PANUKL exports data to SDSA and to Calculix |
| PMARC | Free On Request | Fortran 77 | UNIX | Yes | Yes | | | | | | | NASA , descendant of VSAERO |
| VSAero | Proprietary | | UNIX | | | | | | | | | Homepage |
| Vortexje | GPLv2 | C++ | Yes | | | | | | | | | Baayen & Heinz GmbH |
| XFOIL | GPLv2 | Fortran | Yes | Yes | Yes | | | | | | | web .mit .edu /drela /Public /web /xfoil / |
| XFLR5 | GPLv2 | C / C++ | Yes | | | | | | | | | www .xflr5 .com |
| VSPAERO Packaged with OpenVSP | NOSA | C++ | Yes | Yes | Yes | | | Yes | | Polygons, typically quad & tri dominated | Free & rigid | openvsp .org |
| MachLine | MIT License | Fortran | Yes | untested | untested | STL, VTK, TRI | | Yes | | Solid bodies using surface tris | Rigid | Utah State University AeroLab aerolab .usu .edu github .com /usuaero /MachLine |
`t
>>See also
• `F33f`_`[Stream function`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stream_function]`_`f
• `F33f`_`[Conformal mapping`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Conformal_mapping]`_`f
• `F33f`_`[Velocity potential`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Velocity_potential]`_`f
• `F33f`_`[Divergence theorem`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Divergence_theorem]`_`f
• `F33f`_`[Joukowsky transform`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Joukowsky_transform]`_`f
• `F33f`_`[Potential flow`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Potential_flow]`_`f
• `F33f`_`[Circulation`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Circulation_(fluid_dynamics)]`_`f
• `F33f`_`[Biot–Savart law`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Biot–Savart_law]`_`f
>>Notes
`:cite-note-1`!1.`! `F0af`_`[↑`#cite-ref-1]`_`f Section 7.6
>>References
• Public Domain Aerodynamic Software, A Panair Distribution Source, Ralph Carmichael
• Panair Volume I, Theory Manual, Version 3.0, Michael Epton, Alfred Magnus, 1990 `F33f`_`[Boeing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Boeing]`_`f
• Panair Volume II, Theory Manual, Version 3.0, Michael Epton, Alfred Magnus, 1990 `F33f`_`[Boeing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Boeing]`_`f
• Panair Volume III, Case Manual, Version 1.0, Michael Epton, Kenneth Sidewell, Alfred Magnus, 1981 `F33f`_`[Boeing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Boeing]`_`f
• Panair Volume IV, Maintenance Document, Version 3.0, Michael Epton, Kenneth Sidewell, Alfred Magnus, 1991 `F33f`_`[Boeing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Boeing]`_`f
• Recent Experience in Using Finite Element Methods For The Solution Of Problems In Aerodynamic Interference, Ralph Carmichael, 1971 `F33f`_`[NASA Ames Research Center`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=NASA_Ames_Research_Center]`_`f
• [1]
`c`F0af`_`[↑ Back to top`#top]`_`f`a